package study.HL7.lis_hl7;

import ca.uhn.hl7v2.parser.Parser;
import ca.uhn.hl7v2.parser.PipeParser;

/**
 * @Author 刘伟涛
 * @Date 2024/8/6 14:55
 **/
public class TestGenerate {
    public static void main(String[] args) throws Exception {
        // 创建ORU_R01消息
/*        ORU_R01 oruMessage = new ORU_R01();
        oruMessage.initQuickstart("ORU", "R01", "P");

        // 设置MSH（消息头）段
        MSH mshSegment = oruMessage.getMSH();
        mshSegment.getSendingApplication().getNamespaceID().setValue("LIS");
        mshSegment.getReceivingApplication().getNamespaceID().setValue("EHR");
        mshSegment.getDateTimeOfMessage().getTimeOfAnEvent().setValue("20240805");

        // 设置OBX（观察结果）段
        OBX obxSegment = oruMessage.getRESPONSE().getORDER_OBSERVATION().getOBSERVATION(0).getOBX();
        obxSegment.getSetIDOBX().setValue("1");
        obxSegment.getObservationIdentifier().getIdentifier().setValue("Test123");
        obxSegment.getObservationValue(0).getData().parse("Positive");*/

        // 将消息转换为字符串格式
        Parser parser = new PipeParser();
//        String encodedMessage = parser.encode(oruMessage);
//        System.out.println("Generated HL7 Message:\n" + encodedMessage);

        // 将此消息发送到LIS系统，通常通过TCP/IP连接，或通过HTTP传输消息。
    }
}
